恶意代码生存技术有哪些
恶意代码的英文是Malicious Code, 它是一种违背目标系统安全策略的程序代码,会造成目标系统信息泄露、资源滥用,破坏系统的完整性及可用性。恶意代码生存技术包括:
反跟踪技术
恶意代码靠采用反跟踪技术来提高自身的伪装能力和防破译能力,使检测与清除恶意代码的难度大大增加。反跟踪技术大致可以分为两大类:反动态跟踪技术和反静态分析技术。
加密技术
加密技术是恶意代码进行自我保护的手段之一,再配合反跟踪技术的使用,让分析者不能正常调试和阅读恶意代码,无法获得恶意代码的工作原理,自然也不能抽取特征串。从加密的内容上划分,加密手段有 种,即信息加密、数据加密和程序代码加密。
模糊变换技术
恶意代码每感染一个客体对象时都会利用模糊变换技术使潜入宿主程序的代码不尽相同。尽管是同一种恶意代码,但仍会具有多个不同样本,几乎不存在稳定的代码,只采用基于特征的检测工具一般无法有效识别它们。随着这类恶意代码的增多,不但使病毒检测和防御软件的编写难度加大,还会使反病毒软件的误报率增加。
自动生产技术
普通病毒能够利用“多态性发生器”编译成具有多态性的病毒。多态变换引擎能够让程序代码本身产生改变,但却可以保持原有功能。例如保加利亚的 “Dark Avenger”, 变换引擎每产生一个恶意代码,其程序体都会发生变化,反恶意代码软件若只是采用基千特征的扫描技术,则无法检测和清除这种恶意代码。
变形技术
在恶意代码的查杀过程中,多数杀毒厂商通过提取恶意代码特征值的方式对恶意代码进行分辨。这种基千特征码的病毒查杀技术的致命缺点是需要 个特征代码库,同时这个库中的代码要具有固定性。病毒设计者利用这一漏洞,设计出具体同 功能不同特征码的恶意代码。这种变换恶意代码特征码的技术称为变形技术。
三线程技术
恶意代码中应用 线程技术是为了防止恶意代码被外部操作停止运行。 线程技术的工作原理是一个恶意代码进程同时开启了三个线程,其中一个为负责远程控制工作的主线程,另外两个为用来监视线程负责检查恶意代码程序是否被删除或被停止自启动的监视线程和守护线程。注入其他可执行文件内的守护线程,同步于恶意代码进程。只要进程被停止,它就会重新启动该进程,同时向主线程提供必要的数据,这样就使得恶意代码可以待续运行。“中国黑客”就是采用这种技术的恶意代码。
进程注入技术
在系统启动时操作系统的系统服务和网络服务一般能够自动加载。恶意代码程序为了实现隐藏和启动的目的,把自身嵌入与这些服务有关的进程中。这类恶意代码只需要安装一次,就能被服务加载到系统中运行,并且可以一直处千活跃状态。如 Windows 下的大部分关键服务程序能够被 “WinEggDropShell” 注入
通信隐藏技术
实现恶意代码的通信隐藏技术一般有四类:端口定制技术、端口复用技术、通信加密技术、隐蔽通道技术。